import gmpy2
import libnum

n= 17483770234884142847456666352881633858141093959507406489438832657811880348544517317886235174580364402693136945332374390980468053811072776178864091768180166876221659675217180437370214612891072604883134760061297589091497848817124108984000363937311663848944163413212471490943544013729793140932153932722897244086933590069840634776188515344586162299372418033246808686151342011111253737930983815234958893340565218112060881945578082230607232140507764864201490541905951630320920698022711376246588071419161730102709168468030659029885654176255175171297966568656762020277408125453099365768353256668477237850688484624314512104837
c= 7756412419736534306267281137444055853970895832135119947012680801728368453412511898214833061840593207999925914861147437172775590961864429038538036044372917920901477955515874667827839423934284921039793035016663689671993982388770276121107464667278667672531024583000281458905472417802844581894023365347884859881069456113169832521363450118618605256637768282911914962650680421804219666243987097956602779278718190490013281291054728762585198175600573970428128728004843715806947600331454660689313029334295614495527134693874900019066579958992524583794853232795458791635025434351607697221423673529269965794629214578773549342054
e= 65537

p = gmpy2.gcd(n, c)
q = n // p
assert p * q == n
phi = (p - 1) * (q - 1)
d = gmpy2.invert(e, phi)
m = pow(c, d, n)
m1 = m // p
print(libnum.n2s(int(m1)))
